#ifndef THREE_POSITION_SWITCH_H
#define THREE_POSITION_SWITCH_H

#include "Switch.h"

class ThreePositionSwitch : public Switch
{
public:
	ThreePositionSwitch(unsigned int channel, unsigned int id);
	
	Position GetPosition(void);
private:
	static const int kPositivePositionThreshold = -1;
	static const int kNeutralPositionThreshold  = -1;
	static const int kNegativePositionThreshold = -1;
	static const int kThresholdLeeway			= 10;
	
	bool isNearEnough(int rawValue, int threshold);
};

#endif//THREE_POSITION_SWITCH_H
